home *** CD-ROM | disk | FTP | other *** search
- ! .ALTERNATE
- !
-
- !foo MACRO string
- ! LOCAL lab1, lab2
- !lab1: DATA.L lab2
- !lab2: SDATA string
- ! ENDM
- !
-
- ! foo "An example"
- !
- !LL0001: DATA.L LL0002
- LL0001: .long LL0002
- !LL0002: SDATA "An example"
- LL0002: .byte 65,110,32,101,120,97,109,112,108,101
- ! foo "using LOCAL"
- !
- !LL0003: DATA.L LL0004
- LL0003: .long LL0004
- !LL0004: SDATA "using LOCAL"
- LL0004: .byte 117,115,105,110,103,32,76,79,67,65,76
- !
-
- !! test of LOCAL directive
- ! test of LOCAL directive
- !
-
- !chk_err MACRO limit
- ! LOCAL skip !! frob
- ! LOCAL zap,dog,barf
- !barf: cmp ax,limit !! check value against
- ! !! limit
- ! jle skip !! skip call if OK
- !skip: call error
- ! foo dog
- ! zap dog
- ! nop
- ! ENDM
- !
-
- ! chk_err 5
- !
- !
- !LL0008: cmp ax,5
- LL0008: cmp ax,5
- !
- ! jle LL0005
- jle LL0005
- !LL0005: call error
- LL0005: call error
- ! foo LL0007
- !
- !LL0009: DATA.L LL000a
- LL0009: .long LL000a
- !LL000a: SDATA LL0007
- LL000a: .byte 76,76,48,48,48,55
- ! LL0006 LL0007
- LL0006 LL0007
- ! nop
- nop
- ! chk_err 10
- !
- !
- !LL000e: cmp ax,10
- LL000e: cmp ax,10
- !
- ! jle LL000b
- jle LL000b
- !LL000b: call error
- LL000b: call error
- ! foo LL000d
- !
- !LL000f: DATA.L LL0010
- LL000f: .long LL0010
- !LL0010: SDATA LL000d
- LL0010: .byte 76,76,48,48,48,100
- ! LL000c LL000d
- LL000c LL000d
- ! nop
- nop
- !
-
- !
-
- ! END
-